Text entry methods and systems for computing devices are well-known in the art. While some computing devices, such as personal computers, have been afforded with a full QWERTY keyboard for alphanumeric text entry, many other computing devices, such as handheld electronic devices, are equipped with limited keyboards, wherein one key can represent more than one alphabetic character. One such system, referred to in the art as multi-tap, has been in use for a number of years for permitting users to enter text using a conventional telephone key pad such as specified under ITU E 1.161. Multi-tap requires a user to press a key a varying number of times, generally within a limited period of time, to input a specific letter.
Another system, T9® developed by Tegic Communications, Inc., uses predictive letter patterns to allow a user to ideally press each key representing a letter only once to enter text. Unlike multi-tap, which requires a user to indicate a desired character by a precise number of presses of a key, or keystrokes, T9 uses a predictive text dictionary and established letter patterns for a language to intelligently guess which one of many characters represented by a key a user intended to enter. The predictive text dictionary is primarily a list of words, acronyms, abbreviations, etc. that can be used in the composition of text. Generally, all possible character string permutations represented by a number of keystrokes entered by a user are compared to the words in the predictive text dictionary and a subset of the permutations is shown to the user to allow selection of the intended character string. The permutations are generally sorted by likelihood determined from the number of words matched in the predictive text dictionary and various metrics maintained for these words. Where the possible character string permutations do not match any words in the predictive text dictionary, the set of established letter patterns for a selected language can be applied to suggest the most likely character string permutations. As can be conceived, a user may be required to input a number of additional keystrokes in order to enter in a desired word.
Despite the plethora of these and other interfaces available for inputting text on such computing devices, the ease and speed of text entry may not be satisfactory in some circumstances. The predictive text dictionary may be populated with words unlikely to be used by a user and may not contain other words more likely to be used by that user. As a result, the user may, upon entry of a set of keystrokes, be presented with a list of character strings that correspond to words that the user does not intend to input. Further, character strings corresponding to words the user intends to input may not appear in the suggestions provided by the device.
Such predictive text dictionaries have been used on personal computers and, more recently, on computing devices with limited keyboards, to suggest a number of words to the user upon partial entry of the word. On a personal computer, the word fragment entered by a user in a software application is compared to words in a predictive text dictionary to determine a list of words matching the pattern of letters provided by the word fragment. The list of words is then provided to the user as a list of options from which the user can select. Where the word being entered by the user does not appear in the list of words displayed, the user can elect to continue entering in text to complete the word. In computing devices with limited keyboards using systems where one keystroke can represent a number of characters, such as T9, this function is little different than the determination of the character strings to show the user, as, in this case, whole words beginning with characters possibly represented by the keystrokes entered are shown to the user.
The provisioning of predictive text dictionaries on some computing devices with limited non-volatile memory has proven to be a challenge. As a result, manufacturers have been forced to equip such devices with a pared-down predictive text dictionary, thus reducing the words available. On the other hand, large, generic predictive text dictionaries can be disadvantageous as a large number of words, many of which may not be relevant to or used by the user, can be suggested by the predictive text dictionary upon entering in a number of keystrokes. This situation serves to frustrate and slow down the user's input of text, and even can result in the insertion of the incorrect words.
Some computing devices permit a user to populate the predictive text dictionary with words provided by the user, thus increasing the utility of the predictive text dictionary if placed therein. This method of expanding the predictive text dictionary, however, is slow and typically needs to be repeated for each device of the user.
It is, therefore, an object of the invention to provide a novel method and system for populating a predictive text dictionary.